// pages/detail.js
const config = require('../../utils/config.js')

const util = require('../../utils/util.js')
import _ from './../../utils/lodash.js';
//获取应用实例
// var QQMapWX = require('../../libs/qqmap-wx-jssdk.js');
//
// var qqmapsdk = new QQMapWX({
//   key: 'UDUBZ-OZQ3F-IGWJH-JVQLK-SI5J2-UPFAU' //在这里输入你在腾讯位置服务平台申请的KEY
// });
const app = getApp();
function isNumericStart(str) {
  return /^\d/.test(str);
}


Page({

  /**
   * 页面的初始数据
   */
  data: {
    user_id: app.globalData.userInfo ? app.globalData.userInfo.id : '',
    concentrator_detail:{},
    id: '',
    name: '',
    number: '',
    remark:'',
    imei:'',
    latitude: 42.92736760935551,
    longitude: 89.19229343394916,
    address: '',
    markers: [{
      id: 1,
      latitude: 42.92736760935551,
      longitude: 89.19229343394916,
      width: '30', // 标记点图标宽度
      height: '60', // 标记点图标高度
    }],
    portArr:[1,2,3,4,5,6,7,8],
    item: {},
    deviceId:'',
    editable:false,
    history:[],
    history2:[]

  },
  timer: null,
  powerDrawer: function (e) {
    var currentStatu = e.currentTarget.dataset.statu;
    this.util(currentStatu)
  },
  util: function (currentStatu) {
    /* 动画部分 */
    // 第1步：创建动画实例 
    var animation = wx.createAnimation({
      duration: 200, //动画时长
      timingFunction: "linear", //线性
      delay: 0 //0则不延迟
    });

    // 第2步：这个动画实例赋给当前的动画实例
    this.animation = animation;

    // 第3步：执行第一组动画：Y轴偏移240px后(盒子高度是240px)，停
    animation.translateX(wx.getSystemInfoSync().windowWidth).step();

    // 第4步：导出动画对象赋给数据对象储存
    this.setData({
      animationData: animation.export()
    })

    // 第5步：设置定时器到指定时候后，执行第二组动画
    setTimeout(function () {
      // 执行第二组动画：Y轴不偏移，停
      animation.translateX(0).step()
      // 给数据对象储存的第一组动画，更替为执行完第二组动画的动画对象
      this.setData({
        animationData: animation
      })

      //关闭抽屉
      if (currentStatu == "close") {
        this.setData({
          showModalStatus: false
        });
      }
    }.bind(this), 200)

    // 显示抽屉
    if (currentStatu == "open") {
      this.setData({
        showModalStatus: true
      });
    }
  },
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    console.log(options);
    const that = this;
    this.setData({
      number: options.number
    },function (){
      this.fetConctrator();
    })
    wx.setNavigationBarTitle({
      title: `消防栓${options.number}详情`,
    })



  },

  /**
   * 选择位置信息
   */
  bindmarkertap: function () {
    wx.openLocation({
      latitude: Number(this.data.latitude), // 纬度，范围为-90~90，负数表示南纬
      longitude: Number(this.data.longitude), // 经度，范围为-180~180，负数表示西经
      scale: 14, // 缩放比例
    })



  },
  fetHistory: function (id) {
    const that = this;
    wx.request({
      url: `${config.prefix}/hydrant_historical_data`,
      header: {
        Authorization: `Bearer ${app.globalData.userInfo.token}`
      },
      method: 'GET',
      data: {
        hydrant_id: id,
        start_date: util.getMonthFirst(),
        end_date: util.formatDate(new Date()),
        per_page:20,
        page:1,
        order_direction: 'desc',
      },
      success: function (res) {
        console.log('get res', res)
        if (res.statusCode === 200) {
          for(let i=0;i<res.data.data.length;i++){
            res.data.data[i].collected_at = res.data.data[i].collected_at.slice(5)
          }
          that.setData({
            history:res.data.data
          })


        }
      }
    })
  },
  fetHistory2: function (id) {
    const that = this;
    wx.request({
      url: `${config.prefix}/hydrant_consumption_data`,
      header: {
        Authorization: `Bearer ${app.globalData.userInfo.token}`
      },
      method: 'GET',
      data: {
        hydrant_id: id,
        start_date: util.getLast7Days(),
        end_date: util.formatDate(new Date()),
      },
      success: function (res) {
        console.log('get res', res)
        if (res.statusCode === 200) {
          that.setData({
            history2:res.data.data.reverse()
          })
        }
      }
    })
  },
  goTest: function () {
    const that=this;
    console.log('goTest')
    wx.navigateTo({
      url: `/pages/test_list/list?hydrant_id=${that.data.item.id}`,
    })
  },
  fetConctrator: function (department) {
    const that = this;

    wx.request({
      url: `${config.prefix}/hydrants`,
      header: {
        Authorization: `Bearer ${app.globalData.userInfo.token}`
      },
      method: 'GET',
      data: {
        number: that.data.number
      },
      success: function (res) {
        console.log('get res', res)
        if (res.statusCode === 200) {
          if( res.data.data.length===1){
            let data={
              ...res.data.data[0],
              address:res.data.data[0].address.replace(/泉州市德化县/g, ""),
              renderMeterStatus:(res.data.data[0].latest_data.rtu&&res.data.data[0].latest_data.rtu.parameters)?util.renderMeterStatus(res.data.data[0].latest_data.rtu.parameters.meter_status):[],

            }
            if(res.data.data[0].latest_data.rtu&&res.data.data[0].latest_data.rtu.collected_at){
              data={
                ...res.data.data[0],
                address:res.data.data[0].address.replace(/泉州市德化县/g, ""),
                renderMeterStatus:(res.data.data[0].latest_data.rtu&&res.data.data[0].latest_data.rtu.parameters)?util.renderMeterStatus(res.data.data[0].latest_data.rtu.parameters.meter_status):[],
                collected_at:res.data.data[0].latest_data.rtu.collected_at,
                ...res.data.data[0].latest_data.rtu.parameters
              }
            }
            console.log('data',data)
            that.setData({
              item:data,
              latitude:data.latitude,
              longitude:data.longitude,
              markers: [{
                id: 1,
                latitude:data.latitude,
                longitude:data.longitude,
                width: '30', // 标记点图标宽度
                height: '60', // 标记点图标高度
                label:{
                  content:'点击导航',
                  fontSize:16
                }
              }],
            },function (){
              that.fetHistory(that.data.item.id)
              that.fetHistory2(that.data.item.id)
            })

          }


        }
      }
    })

  },


  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {

  },


  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {
    // this.getRealData();
  },
  changeActive: function (e) {
    console.log(e.currentTarget.dataset.item)
    this.setData({
      navbarActiveIndex: e.currentTarget.dataset.item
    })
  },
  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {
    console.log('list detail onHide')

    // if (this.timer) {
    //   clearTimeout(this.timer)
    // }

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {
    console.log('list detail onUnload')
    // this.stopBluetoothDevicesDiscovery()
    // if (this.timer) {
    //   clearTimeout(this.timer)
    // }
  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function() {
    console.log('onPullDownRefresh')
    this.fetConctrator()
  },

  /**
   * 页面上拉触底事件的处理函数
   */
  // onReachBottom: function() {

  // },

  /**
   * 用户点击右上角分享
   */
  // onShareAppMessage: function() {

  // }
})